访问电脑版页面

导航:老古开发网手机版51单片机

linux环境下如何开发51单片机 基于codeblocks和SDCC

导读:
关键字:
51单片机,Linux,

  系统环境:linux mint 18.3 xfce 64bit(基于ubuntu16.04.01)

  需要软件及环境:

  (1)codeblocks

  (2)SDCC编译器

  (3)python-serial

  (4)stcflash(https://github.com/laborer/stcflash)

  linux配置stm32开发环境概述

  在linux下开发51单片机也非常简单,以前介绍过使用codeblocks配合SDCC编译器进行开发51单片机的博文

  Codeblocks配置SDCC实现51单片机定时器功能(proteus仿真)

  在linux系统下也是同样基于codeblocks和SDCC,使用codeblocks可以自动生成hex文件,而不用再安装其他软件来转换格式,烧写程序到51单片机使用stcflash,使用python,需要安装serial串口模块。

  关于USB转串口驱动问题 ,在linux下已经集成好了CH340和PL2302的驱动(linux mint(ubuntu16.04)是这样,其他发行版不清楚),一连接电脑在/dev/下面就会自动有/dev/ttyUSB0,表示有一个串口设备连接了电脑,在linux下的串口助手可以参考另一篇博文

  Linux系统下串口调试助手putty,cutecom,xgcom

  (1)codeblocks

  https://apt.jenslody.de/ 这个网站里有codeblocks的deb源,其他linux发行版也是能在官网找到安装包的,具体安装就不赘述了,相信在linux玩51的已经有这些基础的了。

  (2)SDCC

  下载snapshot版本,下载之后解压,解压后在share/sdcc/doc/INSTALL.txt 里有安装指导,其实就是把解压后的文件(包含bin和share两个文件夹)复制到/usr/local 目录下,正确安装后

  sdcc二进制文件到: /usr/local/bin/

  header files 到: /usr/local/share/sdcc/include/

  non-free header files 到: /usr/local/share/sdcc/non-free/include/

  library files 到: /usr/local/share/sdcc/lib/

  non-free library files 到: /usr/local/share/sdcc/non-free/lib/

  并且 documentaTIon 到: /usr/local/share/sdcc/doc/

  也可以运行

  /usr/local/bin/sdcc -v

  查看sdcc是否正确安装,正确安装执行上述代码会返回版本号

  (3)stcflash

  使用的时候要把stcflash.py 这个文件复制到hex文件同目录下,假设需要烧写的文件是test.hex ,那么在终端进入到test.hex 目录下,执行下面语句

  python stcflash.py test.hex

  以我自己的一个工程为例,需要烧写的文件为sonar.hex ,此时会有如下图所示

  

  此时要关闭51单片机电源然后重启,就像在win系统下一样,然后会看到以下情况:

  

  有晶振频率,芯片型号,ROM大小等信息。

  关于codeblocks建立MCS51工程的教程建议参考篇首提供的链接,这里就不再叙述了。

来源:网络整理   作者:city_prolove  2018/3/29 14:42:00
栏目: [ 51单片机]

相关阅读

学C51的基础 11《 枚 举(enum) 》作者[cmh]©

16X2字符型液晶显示模块的驱动

C51怎样在绝对地址定义变量呢?  

AT89S52的中文简介

pdata型变量是如何分页的,如果我想把pdata型变量定义到eram的>256字节的高地址,怎样用P2口输入地址

有关单片机ALE引脚的问题

c51单片机实用通信协议

51内核8位单片机MAX7651的开发环境

学C51的基础 8 《 控制流程语句 》 作者[cmh]©

数字温度传感器DS18B20的原理与应用

51单片机与PC机通信的设计

51单片机常见的7种时钟电路介绍

51单片机自然优先级与中断服务入口地址的设置

volatile的作用是什么 作者[hudaidai]©

AT89C51单片机与74LS164动态显示接口

51单片机实现显示器显示日历与时钟和温度的设计

学C51的基础4 《 变 量 》 作者[cmh]©

学C51的基础5《 运算符 》 作者[cmh]©

如何利用MCS-51单片机对周期波频率进行测量

linux环境下如何开发51单片机 基于codeblocks和SDCC